MODULE	'exec/nodes',
			'graphics/displayinfo',
			'graphics/text',
			'workbench/startup'

#define ASLNAME 'asl.library'

CONST	ASL_TB=$80080000,
		ASL_FileRequest=0,
		ASL_FontRequest=1,
		ASL_ScreenModeRequest=2

OBJECT FileRequester
	reserved0[4]:CHAR,
	File:LONG,
	Drawer:LONG,
	reserved1[10]:CHAR,
	LeftEdge:INT,
	TopEdge:INT,
	Width:INT,
	Height:INT,
	reserved2[2]:CHAR,
	NumArgs:LONG,
	ArgList:PTR TO WBArg,
	UserData:LONG,
	reserved3[8]:CHAR,
	Pattern:PTR TO CHAR

CONST	ASLFR_Window=$80080002,
		ASLFR_Screen=$80080028,
		ASLFR_PubScreenName=$80080029,
		ASLFR_PrivateIDCMP=$8008002A,
		ASLFR_IntuiMsgFunc=$80080046,
		ASLFR_SleepWindow=$8008002B,
		ASLFR_UserData=$80080034,
		ASLFR_TextAttr=$80080033,
		ASLFR_Locale=$80080032,
		ASLFR_TitleText=$80080001,
		ASLFR_PositiveText=$80080012,
		ASLFR_NegativeText=$80080013,
		ASLFR_InitialLeftEdge=$80080003,
		ASLFR_InitialTopEdge=$80080004,
		ASLFR_InitialWidth=$80080005,
		ASLFR_InitialHeight=$80080006,
		ASLFR_InitialFile=$80080008,
		ASLFR_InitialDrawer=$80080009,
		ASLFR_InitialPattern=$8008000A,
		ASLFR_Flags1=$80080014,
		ASLFR_Flags2=$80080016,
		ASLFR_DoSaveMode=$8008002C,
		ASLFR_DoMultiSelect=$8008002D,
		ASLFR_DoPatterns=$8008002E,
		ASLFR_DrawersOnly=$8008002F,
		ASLFR_FilterFunc=$80080031,
		ASLFR_RejectIcons=$8008003C,
		ASLFR_RejectPattern=$8008003D,
		ASLFR_AcceptPattern=$8008003E,
		ASLFR_FilterDrawers=$8008003F,
		ASLFR_Hookfunc=$80080007,
		FRF_DOWILDFUNC=$80,		// Obsolete
		FRB_FILTERFUNC=7,
		FRF_FILTERFUNC=$80,
		FRF_DOMSGFUNC=$40,		// Obsolete
		FRB_INTUIFUNC=6,
		FRF_INTUIFUNC=$40,
		FRB_DOSAVEMODE=5,
		FRF_DOSAVEMODE=$20,
		FRB_PRIVATEIDCMP=4,
		FRF_PRIVATEIDCMP=16,
		FRB_DOMULTISELECT=3,
		FRF_DOMULTISELECT=8,
		FRB_DOPATTERNS=0,
		FRF_DOPATTERNS=1,
		FRB_DRAWERSONLY=0,
		FRF_DRAWERSONLY=1,
		FRB_FILTERDRAWERS=1,
		FRF_FILTERDRAWERS=2,
		FRB_REJECTICONS=2,
		FRF_REJECTICONS=4

OBJECT FontRequester
	reserved0[8]:CHAR,
	Attr:TextAttr,
	FrontPen:CHAR,
	BackPen:CHAR,
	DrawMode:CHAR,
	reserved1:CHAR,
	Userdata:LONG,
	LeftEdge:INT,
	TopEdge:INT,
	Width:INT,
	Height:INT,
	TAttr:TTextAttr

CONST	ASLFO_Window=$80080002,
		ASLFO_Screen=$80080028,
		ASLFO_PubScreenName=$80080029,
		ASLFO_PrivateIDCMP=$8008002A,
		ASLFO_IntuiMsgFunc=$80080046,
		ASLFO_SleepWindow=$8008002B,
		ASLFO_UserData=$80080034,
		ASLFO_TextAttr=$80080033,
		ASLFO_Locale=$80080032,
		ASLFO_TitleText=$80080001,
		ASLFO_PositiveText=$80080012,
		ASLFO_NegativeText=$80080013,
		ASLFO_InitialLeftEdge=$80080003,
		ASLFO_InitialTopEdge=$80080004,
		ASLFO_InitialWidth=$80080005,
		ASLFO_InitialHeight=$80080006,
		ASLFO_InitialName=$8008000A,
		ASLFO_InitialSize=$8008000B,
		ASLFO_InitialStyle=$8008000C,
		ASLFO_InitialFlags=$8008000D,
		ASLFO_InitialFrontPen=$8008000E,
		ASLFO_InitialBackPen=$8008000F,
		ASLFO_InitialDrawMode=$8008003B,
		ASLFO_Flags=$80080014,
		ASLFO_DoFrontPen=$8008002C,
		ASLFO_DoBackPen=$8008002D,
		ASLFO_DoStyle=$8008002e,
		ASLFO_DoDrawMode=$8008002F,
		ASLFO_FixedWidthOnly=$80080030,
		ASLFO_MinHeight=$80080010,
		ASLFO_MaxHeight=$80080011,
		ASLFO_FilterFunc=$80080031,
		ASLFO_HookFunc=$80080007,
		ASLFO_ModeList=$80080015,
		ASLFO_FrontPens=$80080040,
		ASLFO_BackPens=$80080041,
		ASLFO_MaxFrontPen=$80080042,
		ASLFO_MaxBackPen=$80080043,
		FOB_DOFRONTPEN=0,
		FOB_DOBACKPEN=1,
		FOB_DOFONTSTYLE=2,
		FOB_DODRAWMODE=3,
		FOB_FIXEDWIDTHONLY=4,
		FOB_PRIVATEIDCMP=5,
		FOB_INTUIFUNC=6,
		FOB_FILTERFUNC=7,
		FOF_DOFRONTPEN=1,
		FOF_DOBACKPEN=2,
		FOF_DOFONTSTYLE=4,
		FOF_DODRAWMODE=8,
		FOF_FIXEDWIDTHONLY=16,
		FOF_PRIVATE=$20,		// Obsolete
		FOF_PRIVATEIDCMP=$20,
		FOF_DOMSGFUNC=$40,	// Obsolete
		FOF_INTUIFUNC=$40,
		FOF_DOWILDFUNC=$80,	// Obsolete
		FOF_FILTERFUNC=$80

OBJECT ScreenModeRequester
	DisplayID:LONG,
	DisplayWidth:LONG,
	DisplayHeight:LONG,
	DisplayDepth:UWORD,
	OverscanType:UWORD,
	AutoScroll:INT,
	BitMapWidth:LONG,
	BitMapHeight:LONG,
	LeftEdge:INT,
	TopEdge:INT,
	Width:INT,
	Height:INT,
	InfoOpened:INT,
	InfoLeftEdge:INT,
	InfoTopEdge:INT,
	InfoWidth:INT,
	InfoHeight:INT,
	UserData:LONG

OBJECT DisplayMode
	LN:LN,
	DimensionInfo:DimensionInfo,
	PropertyFlags:LONG

CONST	ASLSM_Window=$80080002,
		ASLSM_Screen=$80080028,
		ASLSM_PubScreenName=$80080029,
		ASLSM_PrivateIDCMP=$8008002a,
		ASLSM_IntuiMsgFunc=$80080046,
		ASLSM_SleepWindow=$8008002b,
		ASLSM_UserData=$80080034,
		ASLSM_TextAttr=$80080033,
		ASLSM_Locale=$80080032,
		ASLSM_TitleText=$80080001,
		ASLSM_PositiveText=$80080012,
		ASLSM_NegativeText=$80080013,
		ASLSM_InitialLeftEdge=$80080003,
		ASLSM_InitialTopEdge=$80080004,
		ASLSM_InitialWidth=$80080005,
		ASLSM_InitialHeight=$80080006,
		ASLSM_InitialDisplayID=$80080064,
		ASLSM_InitialDisplayWidth=$80080065,
		ASLSM_InitialDisplayHeight=$80080066,
		ASLSM_InitialDisplayDepth=$80080067,
		ASLSM_InitialOverscanType=$80080068,
		ASLSM_InitialAutoScroll=$80080069,
		ASLSM_InitialInfoOpened=$8008006a,
		ASLSM_InitialInfoLeftEdge=$8008006B,
		ASLSM_InitialInfoTopEdge=$8008006C,
		ASLSM_DoWidth=$8008006d,
		ASLSM_DoHeight=$8008006e,
		ASLSM_DoDepth=$8008006f,
		ASLSM_DoOverscanType=$80080070,
		ASLSM_DoAutoScroll=$80080071,
		ASLSM_PropertyFlags=$80080072,
		ASLSM_PropertyMask=$80080073,
		ASLSM_MinWidth=$80080074,
		ASLSM_MaxWidth=$80080075,
		ASLSM_MinHeight=$80080076,
		ASLSM_MaxHeight=$80080077,
		ASLSM_MinDepth=$80080078,
		ASLSM_MaxDepth=$80080079,
		ASLSM_FilterFunc=$8008007a,
		ASLSM_CustomSMList=$8008007b

 -> Obsolete
CONST RF_FILE=4,
		RF_DIR=8,
		RF_LEFTEDGE=22,
		RF_TOPEDGE=24,
		RF_WIDTH=26,
		RF_HEIGHT=28,
		RF_NUMARGS=$20,
		RF_ARGLIST=$24,
		RF_USERDATA=$28,
		RF_PAT=$34,
		ASL_Dummy=$80080000,
		ASL_Hail=$80080001,
		ASL_Window=$80080002,
		ASL_LeftEdge=$80080003,
		ASL_TopEdge=$80080004,
		ASL_Width=$80080005,
		ASL_Height=$80080006,
		ASL_HookFunc=$80080007,
		ASL_File=$80080008,
		ASL_Dir=$80080009,
		ASL_Pattern=$8008000A,
		ASL_FontName=$8008000A,
		ASL_FontHeight=$8008000B,
		ASL_FontStyles=$8008000C,
		ASL_FontFlags=$8008000D,
		ASL_FrontPen=$8008000E,
		ASL_BackPen=$8008000F,
		ASL_MinHeight=$80080010,
		ASL_MaxHeight=$80080011,
		ASL_OKText=$80080012,
		ASL_CancelText=$80080013,
		ASL_FuncFlags=$80080014,
		ASL_ModeList=$80080015,
		ASL_ExtFlags1=$80080016,
		FILB_PATGAD=0,
		FILB_MULTISELECT=3,
		FILB_NEWIDCMP=4,
		FILB_SAVE=5,
		FILB_DOMSGFUNC=6,
		FILB_DOWILDFUNC=7,
		FILF_PATGAD=1,
		FILF_MULTISELECT=8,
		FILF_NEWIDCMP=16,
		FILF_SAVE=$20,
		FILF_DOMSGFUNC=$40,
		FILF_DOWILDFUNC=$80,
		FIL1B_NOFILES=0,
		FIL1B_MATCHDIRS=1,
		FIL1F_NOFILES=1,
		FIL1F_MATCHDIRS=2,
		RFF_DOWILDFUNC=$80,
		RFF_DOMSGFUNC=$40,
		RFF_DOCOLOR=$20,
		RFF_NEWIDCMP=16,
		RFF_MULTISELECT=8,
		RFF_PATGAD=1,
		FONB_FRONTCOLOR=0,
		FONB_BACKCOLOR=1,
		FONB_STYLES=2,
		FONB_DRAWMODE=3,
		FONB_FIXEDWIDTH=4,
		FONB_NEWIDCMP=5,
		FONB_DOMSGFUNC=6,
		FONB_DOWILDFUNC=7,
		FONF_FRONTCOLOR=1,
		FONF_BACKCOLOR=2,
		FONF_STYLES=4,
		FONF_DRAWMODE=8,
		FONF_FIXEDWIDTH=16,
		FONF_NEWIDCMP=$20,
		FONF_DOMSGFUNC=$40,
		FONF_DOWILDFUNC=$80
